﻿using System;
using System.Collections.Generic;
using Draco.OWF.Exceptions;
using Draco.OWF.Metadata.DataBinding;
using Draco.OWF.Metadata;

namespace Draco.OWF.RT
{
    public interface ITask
    {
        String Id { get; set; }
        ActivityModel Activity { get; }
        TaskStatus Status { get; set; }
        BindingData Result { get; }
        Stack<ActivityRuntimeException> Exceptions { get; }
        void Run(ITaskContext taskContext);
    }
}
